67 research outputs found
Decompositions of Grammar Constraints
A wide range of constraints can be compactly specified using automata or
formal languages. In a sequence of recent papers, we have shown that an
effective means to reason with such specifications is to decompose them into
primitive constraints. We can then, for instance, use state of the art SAT
solvers and profit from their advanced features like fast unit propagation,
clause learning, and conflict-based search heuristics. This approach holds
promise for solving combinatorial problems in scheduling, rostering, and
configuration, as well as problems in more diverse areas like bioinformatics,
software testing and natural language processing. In addition, decomposition
may be an effective method to propagate other global constraints.Comment: Proceedings of the Twenty-Third AAAI Conference on Artificial
Intelligenc
Efficient Propagators for Global Constraints
We study in this thesis three well known global constraints. The All-Different constraint restricts a set of variables to be assigned to distinct values. The global cardinality constraint (GCC) ensures that a value v is assigned to at least lv variables and to at most uv variables among a set of given variables where lv and uv are non-negative integers such that lv ≤ uv. The Inter-Distance constraint ensures that all variables, among a set of variables x1, . . . , xn, are pairwise distant from p, i. e. |xi - xj| ≥ p for all i ≠ j. The All-Different constraint, the GCC, and the Inter-Distance constraint are largely used in scheduling problems. For instance, in scheduling problems where tasks with unit processing time compete for a single resource, we have an All-Different constraint on the starting time variables. When there are k resources, we have a GCC with lv = 0 and uv = k over all starting time variables. Finally, if tasks have processing time t and compete for a single resource, we have an Inter-Distance constraint with p = t over all starting time variables. We present new propagators for the All-Different constraint, the GCC, and the Inter-Distance constraint i. e. , new filtering algorithms that reduce the search space according to these constraints. For a given consistency, our propagators outperform previous propagators both in practice and in theory. The gains in performance are achieved through judicious use of advanced data structures combined with novel results on the structural properties of the constraints
A Fast Algorithm for Multi-Machine Scheduling Problems with Jobs of Equal Processing Times
Consider the problem of scheduling a set of tasks of length p without preemption on identical machines with given release and deadline times. We present a new algorithm for computing the schedule with minimal completion times and makespan. The algorithm has time complexity O(min(1,p/m)n^2) which improves substantially over the best known algorithm with complexity O(mn^2)
Propagating Conjunctions of AllDifferent Constraints
We study propagation algorithms for the conjunction of two AllDifferent
constraints. Solutions of an AllDifferent constraint can be seen as perfect
matchings on the variable/value bipartite graph. Therefore, we investigate the
problem of finding simultaneous bipartite matchings. We present an extension of
the famous Hall theorem which characterizes when simultaneous bipartite
matchings exists. Unfortunately, finding such matchings is NP-hard in general.
However, we prove a surprising result that finding a simultaneous matching on a
convex bipartite graph takes just polynomial time. Based on this theoretical
result, we provide the first polynomial time bound consistency algorithm for
the conjunction of two AllDifferent constraints. We identify a pathological
problem on which this propagator is exponentially faster compared to existing
propagators. Our experiments show that this new propagator can offer
significant benefits over existing methods.Comment: AAAI 2010, Proceedings of the Twenty-Fourth AAAI Conference on
Artificial Intelligenc
Linear-time filtering algorithms for the disjunctive constraint and a quadratic filtering algorithm for the cumulative not-first not-last
We present new filtering algorithms for Disjunctive and Cumulative
constraints, each of which improves the complexity of the state-of-theart
algorithms by a factor of log n. We show how to perform TimeTabling
and Detectable Precedences in linear time on the Disjunctive
constraint. Furthermore, we present a linear-time Overload Checking for
the Disjunctive and Cumulative constraints. Finally, we show how
the rule of Not-first/Not-last can be enforced in quadratic time for the
Cumulative constraint. These algorithms rely on the union find data
structure, from which we take advantage to introduce a new data structure
that we call it time line. This data structure provides constant time
operations that were previously implemented in logarithmic time by the
Θ-tree data structure. Experiments show that these new algorithms are
competitive even for a small number of tasks and outperform existing algorithms
as the number of tasks increases. We also show that the time
line can be used to solve specific scheduling problems
Counting solutions of knapsack constraints.
Abstract. This paper furthers the recent investigation of search heuristics based on solution counting information, by proposing and evaluating algorithms to compute solution densities of variable-value pairs in knapsack constraints. Given a domain consistent constraint, our first algorithm is inspired from what was proposed for regular language membership constraints. Given a bounds consistent constraint, our second algorithm draws from discrete uniform distributions. Experiments on several problems reveal that simple search heuristics built from the information obtained by these algorithms can be very effective
Flow-Based Propagators for the SEQUENCE and Related Global Constraints
We propose new filtering algorithms for the SEQUENCE constraint and some
extensions of the SEQUENCE constraint based on network flows. We enforce domain
consistency on the SEQUENCE constraint in time down a branch of the
search tree. This improves upon the best existing domain consistency algorithm
by a factor of . The flows used in these algorithms are derived from
a linear program. Some of them differ from the flows used to propagate global
constraints like GCC since the domains of the variables are encoded as costs on
the edges rather than capacities. Such flows are efficient for maintaining
bounds consistency over large domains and may be useful for other global
constraints.Comment: Principles and Practice of Constraint Programming, 14th International
Conference, CP 2008, Sydney, Australia, September 14-18, 2008. Proceeding
Learning parameters for the sequence constraint from solutions
This paper studies the problem of learning parameters for
global constraints such as Sequence from a small set of positive examples.
The proposed technique computes the probability of observing a
given constraint in a random solution. This probability is used to select
the more likely constraint in a list of candidates. The learning method
can be applied to both soft and hard constraint
- …